"""
url_for

- 解释：称为反解析，返回的是视图函数对应的路由地址
- 格式：url_for('视图函数', key=value)
- 注意：url_for 经常和redirect配合使用，传递参数
    - 例如：response = redirect(url_for("taobao", token=123))
"""


from flask import Flask, redirect, url_for

app = Flask(__name__)


@app.route("/")
def helloworld():
    return "hello world Flask"


@app.route("/jingdong")
def jingdong():
    # 1. 通过 url_for 找到taobao的地址，然后通过redirect进行重定向
    response = redirect(url_for("taobao", token=123))
    # 2. 返回响应体对象
    return response


@app.route("/pinduoduo")
def pinduoduo():
    response = redirect(url_for("taobao", token=456))
    return response


@app.route("/taobao/<int:token>")
def taobao(token):
    if token == 123:
        return "欢迎京东用户！"
    elif token == 456:
        return "欢迎拼多多的用户！"
    else:
        return "欢迎其他用户！"


if __name__ == "__main__":
    app.run(debug=True)
